/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package nexus.adec;

import control.Confirmable;
import control.Prueba;
import javax.faces.component.UIParameter;
import javax.faces.event.ActionEvent;
import javax.swing.JOptionPane;

/**
 *
 * @author juampi
 */
public class ControlConfirmacion {
    private String mensajeConfirmacion;
    private String direccionContinuar;
    private boolean mostrarAviso;
    private boolean mostrarConfirmacion;
    Confirmable confirmable;
    /**
     * @return the mensajeConfirmacion
     */
    public String getMensajeConfirmacion() {
        return mensajeConfirmacion;
    }

    /**
     * @param mensajeConfirmacion the mensajeConfirmacion to set
     */
    public void setMensajeConfirmacion(String mensajeConfirmacion) {
        this.mensajeConfirmacion = mensajeConfirmacion;
    }

    public void guardarDatosConfirmacion(ActionEvent event) {
        //UIParameter component = (UIParameter) event.getComponent().findComponent("codigoEliminar");
        UIParameter parametro = (UIParameter) event.getComponent().findComponent("confirmable");
        if(parametro.getValue() instanceof Confirmable) {
            confirmable = (Confirmable) parametro.getValue();
            mensajeConfirmacion = confirmable.getMensaje();
            direccionContinuar = confirmable.getDireccion();
            if(confirmable.getTipo()==Confirmable.TIPO_AVISO) {
                //JOptionPane.showMessageDialog(null, "entro al tipo aviso");
                setMostrarAviso(true);
                setMostrarConfirmacion(false);
            } else if(confirmable.getTipo()==Confirmable.TIPO_CONFIRMACION) {
                //JOptionPane.showMessageDialog(null, "entro al tipo confirmar");
                setMostrarAviso(false);
                setMostrarConfirmacion(true);
            } else {
                //JOptionPane.showMessageDialog(null, "no entro a ninguno");
                setMostrarAviso(false);
                setMostrarConfirmacion(false);
            }
        }
    }

    /**
     * @return the mostrarAviso
     */
    public boolean isMostrarAviso() {
        //JOptionPane.showMessageDialog(null,"el mostrar aviso es "+ mostrarAviso);
        return mostrarAviso;
    }

    /**
     * @param mostrarAviso the mostrarAviso to set
     */
    public void setMostrarAviso(boolean mostrarAviso) {
        this.mostrarAviso = mostrarAviso;
    }

    /**
     * @return the mostrarConfirmacion
     */
    public boolean isMostrarConfirmacion() {
//        JOptionPane.showMessageDialog(null,"el mostrar confirmacion es "+ mostrarConfirmacion);
        return mostrarConfirmacion;
    }
    public void setMostrarConfirmacion(boolean mostrarConfirmacion) {
        this.mostrarConfirmacion = mostrarConfirmacion;
    }
    public String actionGuardarAceptar() {
        confirmable.setDecicion(confirmable.OK);
        return direccionContinuar;
    }
    public String actionGuardarCancelar() {
        confirmable.setDecicion(confirmable.CANCEL);
        return direccionContinuar;
    }
}
